package com.slipper.system.api.scheduled.service;

import com.slipper.common.bo.Result;
import org.springframework.web.bind.annotation.RequestBody;

import com.slipper.common.annotation.FeignRequestMapping;
import com.slipper.common.feign.ScheduledClient;
import com.slipper.system.api.schedule.bo.ScheduleBO;

@ScheduledClient
public interface IScheduledSv {
    /**
     * 创建调度任务
     */
    @FeignRequestMapping("/scheduled/createScheduleJob")
    Result<?> createScheduleJob(@RequestBody ScheduleBO bo);

    /**
     * 删除调度任务
     */
    @FeignRequestMapping("/scheduled/deleteScheduleJob")
    Result<?> deleteScheduleJob(@RequestBody ScheduleBO bo);

    /**
     * 执行调度任务
     */
    @FeignRequestMapping("/scheduled/run")
    Result<?> run(@RequestBody ScheduleBO bo);

    /**
     * 恢复调度任务
     */
    @FeignRequestMapping("/scheduled/resumeJob")
    Result<?> resumeJob(@RequestBody ScheduleBO bo);

    /**
     * 暂停调度任务
     */
    @FeignRequestMapping("/scheduled/pauseJob")
    Result<?> pauseJob(@RequestBody ScheduleBO bo);
}
